﻿//*****************************************************************************
//** Project:PatternWell.PAC
//** Copyright 2011 PatternWell LLC
//** Revision History:
//** Version 1.0 - Initial Release
//*****************************************************************************
using System;


namespace PatternWell.PAC
{
    /// <summary>
    /// Attribute that stores target PAC contract type to be implemented on the controller.
    /// </summary>
    [AttributeUsage(AttributeTargets.Class, AllowMultiple = false)]
    public class PACContract : Attribute
    {
        /// <summary>
        /// Constructor for the attribute
        /// </summary>
        /// <param name="contract">Type of PAC contract to be loaded.</param>
        public PACContract(Type contract)
        {
            Contract = contract;
        }

        /// <summary>
        /// Property that stores the type of PAC contract to be implemented on the controller.
        /// </summary>
        public Type Contract { get; private set; }
    }
}
